package com.plant.dao;

import java.io.Serializable;
import java.util.List;

public interface BaseDao {

	@SuppressWarnings("rawtypes")
	public List loadAll(Class entityClass);                                       //1.查找所有方法
    
    public List<Object> findByHql(String queryString, Object[] values);           //2.通过hql语句查询所有
    
    public boolean add(Object o);                                                  //3.添加对象方法
  
    public boolean del(Object o);                                                 //4.删除方法 接口 删除对象
    
    public boolean update(Object o);                                              //5.修改方法 修改对象方法
    
	@SuppressWarnings("rawtypes")
	public List find(String queryString);                               		  //6.查找所有信息 通过Hql语句查找方法
    
	@SuppressWarnings("rawtypes")
	public Object find(Class c,Serializable key);                                 //7.通过 实体类的关键字查找单个 对象信息
    
    public boolean updateSql(String sql);                                         //8.通过hql语句修改
   
    public boolean updatehql(String hql);                                         //8.通过sql语句修改
    
    public Long count(Object o);                                                   //9.统计某个实体表的行数
    
    public Long CountHql(String hql);                                              //10.通过hql语句查询数据条数方法
    
	@SuppressWarnings("rawtypes")
	public List findpage(int offset,int length,String hql,String time, Class t);   //
    
	@SuppressWarnings("rawtypes")
	public List findfenye(int offset,int length,String hql,String time, Class t);  //
    
    public List<Object> find(String queryString, Object values);
    
	@SuppressWarnings("rawtypes")
	public List lianhe(String hql,Class t);
    
	@SuppressWarnings("rawtypes")
	public List Bysql(String hql,Class t);
    
	@SuppressWarnings("rawtypes")
	public List findname(String hql,String[] parmname,Object[] value);
    
	@SuppressWarnings("rawtypes")
	public List SearchInfBysql(String sql,Class t,String parm);
    
}
